#define _CRT_SECURE_NO_WARNINGS 0
#include"AVLTree.h"
typedef AVLTree<egghead::string, int> tree1;
typedef AVLTree<int, int> tree2;
typedef AVLTree<int,egghead::string> tree3;

void test01()//test constructor	
{
	tree1 t;
	//Pair<egghead::string, int>p ("121212", 12);
	// <egghead::string, int>& _p = p;
	//t.insert(p);
	t.insert("212",12);

}

//void test02()//test insert
//{
//	tree2 t;
//	for (int i = 0; i < 9; i++)
//		t.insert(i, i);
//	for (int i = 17; i > 8; i--)
//		t.insert(i, i);
//	t.inorder();
//	t.leveloder();
//	printf("levelsize:%d\n", t.levelsize());
//	printf("size:%d\n", t.size());
//	t.insert(17, 17);
//	t.insert(16, 16);
//	bool flag = t.check();
//	if (flag)
//		printf("BSTree Correct\n");
//	else
//		printf("BSTree Error\n");
//
//}
//void test02()//test insert
//{
//	tree2 t;
//	for (int i = 0; i < 9; i++)
//		t.insert(i, i);
//	for (int i = 17; i > 8; i--)
//		t.insert(i, i);
//	t.inorder();
//	t.leveloder();
//	printf("levelsize:%d\n", t.levelsize());
//	printf("size:%d\n", t.size());
//	t.insert(17, 17);
//	t.insert(16, 16);
//	bool flag = t.check();
//	if (flag)
//		printf("BSTree Correct\n");
//	else
//		printf("BSTree Error\n");
//
//
//}

//void test03()
//{
//	tree3 t;
//	//int arr[] = { 16, 3, 7, 11, 9, 26, 18, 14, 15 };
//	int arr[] = { 4, 2, 6, 1, 3, 5, 15, 7, 16, 14 };
//	
//	for (auto num : arr)
//		t.insert(move(num), "hello C++");
//
//	bool flag = t.check();
//	if (flag)
//		printf("BSTree Correct\n");
//	else
//		printf("BSTree Error\n");
//	t.leveloder();
//
//}

int main()
{
	/*int arr[] = { 1,2,3,4,5,6,7,8,9 };
	printf("%")*/
	test01();
	//test02();
	//test03();
	return 0;
}